The present invention relates to ATM switches, and in particular to the buffering of cells in such switches.
ATM switches handle both point-to-point and point-to-multipoint connections. All connections in an ATM switch should be served according to their priority, so that cells with higher priority are always transmitted before cells with a lower priority, independently of whether the connection is a point-to-point or a point-to-multipoint connection.
One known method for this is to copy all arriving point-to-multipoint cells to all leaves before putting the cell in the buffer queue. In this way, a point-to-multipoint cell will be stored in the buffers of all links on which it should be transmitted. This requires that the input cell flow be stopped until all cells have been copied to all appropriate buffers, which will lead to decreased throughput and an increased risk for loss of cells.
It is possible to perform the copying of cells in the background, i.e. to wait for empty cell slots in each link, but this may take a long time, which means that the fair order between point-to-point cells and point-to-multipoint cells cannot be guaranteed. To guarantee that the fair order is kept without having to stop incoming cells, all copying of cells would have to be done in one cell interval, i.e. the time between the start of two subsequent cells. This would either limit the number of possible leaves in a point-to-multipoint connection or require very fast memories, which would lead to an increase in costs.
It is an object of the present invention to provide a simple method and an apparatus for handling point-to-multipoint cells together with the point-to-point cells which will:
allow connection to an arbitrary number of points in a point-to-multipoint connection;
guarantee full fairness between all connections according to both their priority class and their logical weight.
These objects are achieved with the method according to the invention by storing point-to-point cells and point-to-multipoint cells separately and according to the physical link they belong to, and transmitting cells according to their physical link, priority class and the time they were stored.
The invention offers the following advantages:
Point-to-multipoint cells can be handled for all priority classes, not only in the same priority class as the point-to-point cells.
No separate priority classes are needed for point-to-multipoint cells, which may be handled in the same priority classes as point-to-point cells.
A reference clock for setting a time stamp on the cells is not needed
It can be ensured that all cells within the same priority class can be compared to each other independently of how long the cells have been stored in the buffers.